
#ifndef ERRORS_WARNINGS_H

#define ERRORS_WARNINGS_H



/* DEFINITION OF ERRORS */

// RANGES
// weird errors, but not fatals - 0x00000002 - 0x000000FF
// lexic - 0x00000100 - 0x000001FF
// syntax - 0x00000200 - 0x00000FFF
// semantic - 0x00001000 - 0x00001FFF
// code generation - 0x00002000 - 0x000027FF


#define ERR_GENERIC_ERROR 0x00000001 // Generic error
// other (your) declarations ...
// ...

#define ERR_SYN_NO_PROGRAM_BEGGINING 0x00000201 // Unknown identifier or constant for the beginning of the program.
#define ERR_SYN_NO_CLASS_MODIFIERS_OR_CLASS 0x00000202 // No class modifiers or class beggining detected.
#define ERR_SYN_KEYWORD_INTO_EXPECTED 0x00000203 // Keyword into was expected.
#define ERR_SYN_NO_CLASS_BODY_ADD_BEGINING 0x00000204 // No unit from the select set of <class_body_add> was found at the begining.
#define ERR_SYN_NO_CLASS_BODY_BEGINING 0x00000205 // No unit from the select set of <class_body> was found at the begining.
#define ERR_SYN_NO_CLASS_BODY_MATCH 0x00000206 // Could not match the nonterminal symbol <class_body>
#define ERR_SYN_NO_GPP_FILE_BEGINING 0x00000207 // No unit from the select set of <gpp_file> was found at the begining.
#define ERR_SYN_NO_USING_DIRECTIVES_BEGINING 0x00000208 // No unit from the select set of <using_directives> was found at the begining.
#define ERR_SYN_NO_USING_DIRECTIVE_BEGINING 0x00000209 // No unit from the select set of <using_directive> was found at the begining.
#define ERR_SYN_NO_FILE_BODY_BEGINING 0x0000020A // No unit from the select set of <file_body> was found at the begining.
#define ERR_SYN_NO_MAIN_DEFINITION_BEGINING 0x0000020B // No unit from the select set of <main_definition> was found at the begining.
#define ERR_SYN_NO_DATA_TYPE_BEGINING 0x0000020C // No unit from the select set of <data_type> was found at the begining.
#define ERR_SYN_NO_ENUM_DEFINITION_BEGINING 0x0000020D // No unit from the select set of <enum_definition> was found at the begining.
#define ERR_SYN_NO_ENUM_NAMES_BEGINING 0x0000020E // No unit from the select set of <enum_names> was found at the begining.
#define ERR_SYN_NO_ENUM_NAMES_ADD_BEGINING 0x0000020F // No unit from the select set of <enum_names_add> was found at the begining.
#define ERR_SYN_NO_TEMPLATE_DEFINITION_BEGINING 0x00000210 // No unit from the select set of <template_definition> was found at the begining.
#define ERR_SYN_NO_TEMPLATE_USE_BEGINING 0x00000211 // No unit from the select set of <template_use> was found at the begining.
#define ERR_SYN_NO_TEMPLATES_LIST_BEGINING 0x00000212 // No unit from the select set of <templates_list> was found at the begining.
#define ERR_SYN_NO_TEMPLATES_LIST_ADD_BEGINING 0x00000213 // No unit from the select set of <templates_list_add> was found at the begining.
#define ERR_SYN_NO_CLASS_INHERIT_NAME_BEGINING 0x00000214 // No unit from the select set of <class_inherit_name> was found at the begining.
#define ERR_SYN_NO_NAME_COMMA_ADD_BEGINING 0x00000215 // No unit from the select set of <name_comma_add> was found at the begining.
#define ERR_SYN_NO_NAME_MATCH 0x00000216 // Could not match the terminal symbol 'NAME'.
#define ERR_SYN_NO_END_OF_FILE_MATCH 0x00000217 // Could not match the terminal symbol 'endOfFile'.
#define ERR_SYN_NO_SEMICOLON_MATCH 0x00000218 // Could not match the terminal symbol ';'.
#define ERR_SYN_NO_AS_MATCH 0x00000219 // Could not match the terminal symbol 'as'.
#define ERR_SYN_NO_LEFT_CURLY_BRACE_MATCH 0x0000021A // Could not match the terminal symbol '{'.
#define ERR_SYN_NO_RIGHT_CURLY_BRACE_MATCH 0x0000021B // Could not match the terminal symbol '}'.
#define ERR_SYN_NO_GREATER_THAN_MATCH 0x0000021C // Could not match the terminal symbol '>'.
#define ERR_SYN_NO_CLASS_MATCH 0x0000021D // Could not match the terminal symbol 'class'.
#define ERR_SYN_NO_CLASS_DEFINITION_BEGINING 0x0000021E // No unit from the select set of <class_definition> was found at the begining.
#define ERR_SYN_NO_CLASS_MOD_BEGINING 0x0000021F // No unit from the select set of <class_mod> was found at the begining.
#define ERR_SYN_NO_CLASS_INHERIT_BEGINING 0x00000220 // No unit from the select set of <class_inherit> was found at the begining.
#define ERR_SYN_NO_LEFT_PARENTHESIS_MATCH 0x00000221 // Could not match the terminal symbol '('.
#define ERR_SYN_NO_RIGHT_PARENTHESIS_MATCH 0x00000222 // Could not match the terminal symbol ')'.
#define ERR_SYN_NO_CONSTRUCTOR_DEFINITION_BEGINING 0x00000223 // No unit from the select set of <constructor_definition> was found at the begining.
#define ERR_SYN_NO_CONSTR_MOD_BEGINING 0x00000224 // No unit from the select set of <constr_mod> was found at the begining.
#define ERR_SYN_NO_CONSTR_INHERIT_BEGINING 0x00000225 // No unit from the select set of <constr_inherit> was found at the begining.
#define ERR_SYN_NO_CONSTR_BODY_BEGINING 0x00000226 // No unit from the select set of <constr_body> was found at the begining.
#define ERR_SYN_NO_FIELD_DEFINITION_BEGINING 0x00000227 // No unit from the select set of <field_definition> was found at the begining.
#define ERR_SYN_NO_FIELD_MODS_BEGINING 0x00000228 // No unit from the select set of <field_mods> was found at the begining.
#define ERR_SYN_NO_FIELD_MOD_BEGINING 0x00000229 // No unit from the select set of <field_mod> was found at the begining.
#define ERR_SYN_NO_FIELD_NAMES_BEGINING 0x0000022A // No unit from the select set of <field_names> was found at the begining.
#define ERR_SYN_NO_FIELD_NAME_BEGINING 0x0000022B // No unit from the select set of <field_name> was found at the begining.
#define ERR_SYN_NO_FIELD_NAMES_ADD_BEGINING 0x0000022C // No unit from the select set of <field_names_add> was found at the begining.
#define ERR_SYN_NO_EQUALS_BEGINING 0x0000022D // No unit from the select set of <equals> was found at the begining.
#define ERR_SYN_NO_ARRAY_DEFINITIONS_BEGINING 0x0000022E // No unit from the select set of <array_definitions> was found at the begining.
#define ERR_SYN_NO_RIGHT_SQUARE_BRACKET_MATCH 0x0000022F // Could not match the terminal symbol ']'.
#define ERR_SYN_NO_ARRAY_DEFINITION_BEGINING 0x00000230 // No unit from the select set of <array_definition> was found at the begining.
#define ERR_SYN_NO_GENERATE_BLOCK_BEGINING 0x00000231 // No unit from the select set of <generate_block> was found at the begining.
#define ERR_SYN_NO_UPTO_EXPRESSION_BEGINING 0x00000232 // No unit from the select set of <upto_expression> was found at the begining.
#define ERR_SYN_NO_AFTER_EXPRESSIO_BEGINING 0x00000233 // No unit from the select set of <after_expression> was found at the begining.
#define ERR_SYN_NO_EVERY_EXPRESSION_BEGINING 0x00000234 // No unit from the select set of <every_expression> was found at the begining.
#define ERR_SYN_NO_PLUS_MINUS_EXPRESSION_BEGINING 0x00000235 // No unit from the select set of <plus_minus_expression> was found at the begining.
#define ERR_SYN_NO_TRANS_LIST_BEGINING 0x00000236 //No unit from the select set of <trans_list> was found at the begining.
#define ERR_SYN_NO_COLON_MATCH 0x00000237 // Could not match the terminal symbol ':'.
#define ERR_SYN_NO_TRANS_LIST_ADDS_BEGINING 0x00000238 //No unit from the select set of <trans_list_adds> was found at the begining.
#define ERR_SYN_NO_TRANS_LIST_ADD_BEGINING 0x00000239 //No unit from the select set of <trans_list_add> was found at the begining.
#define ERR_SYN_NO_ADVANCE_BLOCK_BEGINING 0x0000023A //No unit from the select set of <advance_block> was found at the begining.
#define ERR_SYN_NO_ENTER_BLOCK_BEGINING 0x0000023B //No unit from the select set of <enter_block> was found at the begining.
#define ERR_SYN_NO_FORMING_EXPRESSION_BEGINING 0x0000023C //No unit from the select set of <forming_expression> was found at the begining.
#define ERR_SYN_NO_LEAVE_BLOCK_BEGINING 0x0000023D //No unit from the select set of <leave_block> was found at the begining.
#define ERR_SYN_NO_PROPERTY_DEFINITION_BEGINING 0x0000023E //No unit from the select set of <property_definition> was found at the begining.
#define ERR_SYN_NO_PROPERTY_MODS_BEGINING 0x0000023F //No unit from the select set of <property_mods> was found at the begining.
#define ERR_SYN_NO_PROPERTY_MOD_BEGINING 0x00000240 //No unit from the select set of <property_mod> was found at the begining.
#define ERR_SYN_NO_PROPERTY_NAME_BEGINING 0x00000241 //No unit from the select set of <property_name> was found at the begining.
#define ERR_SYN_NO_PROP_ARRAY_DEFS_BEGINING 0x00000242 //No unit from the select set of <prop_array_defs> was found at the begining.
#define ERR_SYN_NO_PROP_ARRAY_DEF_BEGINING 0x00000243 //No unit from the select set of <prop_array_def> was found at the begining.
#define ERR_SYN_NO_INT_MATCH 0x00000244 // Could not match the terminal symbol 'int'.
#define ERR_SYN_NO_PROPERTY_BODY_BEGINING 0x00000245 // No unit from the select set of <property_body> was found at the begining.
#define ERR_SYN_NO_PROPERTY_READ_BEGINING 0x00000246 // No unit from the select set of <property_read> was found at the begining.
#define ERR_SYN_NO_PROPERTY_WRITE_BEGINING 0x00000247 // No unit from the select set of <property_write> was found at the begining.
#define ERR_SYN_NO_NUMERIC_MATCH 0x00000248 // Could not match the terminal symbol 'numeric'.
#define ERR_SYN_NO_METHOD_DEFINITION_BEGINING 0x00000249 // No unit from the select set of <method_definition> was found at the begining.
#define ERR_SYN_NO_METHOD_MODS_BEGINING 0x0000024A // No unit from the select set of <method_mods> was found at the begining.
#define ERR_SYN_NO_METHOD_MOD_BEGINING 0x0000024B // No unit from the select set of <method_mod> was found at the begining.
#define ERR_SYN_NO_PROCESS_MATCH 0x0000024C // Could not match the terminal symbol 'process'.
#define ERR_SYN_NO_START_PROCESS_BEGINING 0x0000024D // No unit from the select set of <start_process> was found at the begining.
#define ERR_SYN_NO_METHOD_BODY_DECL_BEGINING 0x0000024E // No unit from the select set of <method_body_decl> was found at the begining.
#define ERR_SYN_NO_METHOD_BODY_BEGINING 0x0000024F // No unit from the select set of <method_body> was found at the begining.
#define ERR_SYN_NO_LABEL_METHOD_STATEMENT_BEGINING 0x00000250 // No unit from the select set of <label_method_statement> was found at the begining.
#define ERR_SYN_NO_METHOD_STATEMENTS_BEGINING 0x00000251 // No unit from the select set of <method_statements> was found at the begining.
#define ERR_SYN_NO_NAMESPACE_DEFINITION_BEGINING 0x00000252 // No unit from the select set of <namespace_definition> was found at the begining.
#define ERR_SYN_NO_PARAMETERS_BEGINING 0x00000253 // No unit from the select set of <parameters> was found at the begining.
#define ERR_SYN_NO_PARAMETER_COMMA_ADD_BEGINING 0x00000254 // No unit from the select set of <parameter_comma_add> was found at the begining.
#define ERR_SYN_NO_PARAMETERS_ADD_BEGINING 0x00000255 // No unit from the select set of <parameters_add> was found at the begining.
#define ERR_SYN_NO_PARAMETER_BEGINING 0x00000256 // No unit from the select set of <parameter> was found at the begining.
#define ERR_SYN_NO_ARGUMENTS_BEGINING 0x00000257 // No unit from the select set of <arguments> was found at the begining.
#define ERR_SYN_NO_ARGUMENTS_ADD_BEGINING 0x00000258 // No unit from the select set of <arguments_add> was found at the begining.
#define ERR_SYN_NO_ARGUMENT_COMMA_ADD_BEGINING 0x00000259 // No unit from the select set of <argument_comma_add> was found at the begining.
#define ERR_SYN_NO_VARIABLE_DEFINITION_BEGINING 0x0000025A // No unit from the select set of <variable_definition> was found at the begining.
#define ERR_SYN_NO_PERIOD_MATCH 0x0000025B // Could not match the terminal symbol '.'.
#define ERR_SYN_NO_METHOD_CALL_BEGINING 0x0000025C // No unit from the select set of <method_call> was found at the begining.
#define ERR_SYN_NO_IF_STATEMENT_BEGINING 0x0000025D // No unit from the select set of <if_statement> was found at the begining.
#define ERR_SYN_NO_STATEMENT_ENDING_BEGINING 0x0000025E // No unit from the select set of <statement_ending> was found at the begining.
#define ERR_SYN_NO_ELSE_PART_BEGINING 0x0000025F // No unit from the select set of <else_part> was found at the begining.
#define ERR_SYN_NO_SWITCH_CASE_STATEMENT_BEGINING 0x00000260 // No unit from the select set of <switch_case_statement> was found at the begining.
#define ERR_SYN_NO_SWITCH_CASE_CASES_BEGINING 0x00000261 // No unit from the select set of <switch_case_cases> was found at the begining.
#define ERR_SYN_NO_SWITCH_CASE_CASE_BEGINING 0x00000262 // No unit from the select set of <switch_case_case> was found at the begining.
#define ERR_SYN_NO_SWITCH_CASE_BLOCK_BEGINING 0x00000264 // No unit from the select set of <switch_case_block> was found at the begining.
#define ERR_SYN_NO_SWITCH_CASE_DEFAULT_BEGINING 0x00000265 // No unit from the select set of <switch_case_default> was found at the begining.
#define ERR_SYN_NO_WHILE_MATCH 0x00000266 // Could not match the terminal symbol 'while'.
#define ERR_SYN_NO_WHILE_STATEMENT_BEGINING 0x00000267 // No unit from the select set of <while_statement> was found at the begining.
#define ERR_SYN_NO_DOWHILE_STATEMENT_BEGINING 0x00000268 // No unit from the select set of <dowhile_statement> was found at the begining.
#define ERR_SYN_NO_FOR_STATEMENT_BEGINING 0x00000269 // No unit from the select set of <for_statement> was found at the begining.
#define ERR_SYN_NO_BREAK_STATEMENT_BEGINING 0x0000026A // No unit from the select set of <break_statement> was found at the begining.
#define ERR_SYN_NO_CONTINUE_STATEMENT_BEGINING 0x0000026B // No unit from the select set of <continue_statement> was found at the begining.
#define ERR_SYN_NO_GOTO_STATEMENT_BEGINING 0x0000026C // No unit from the select set of <continue_statement> was found at the begining.
#define ERR_SYN_NO_START_ASSIGNMENTS_BEGINING 0x0000026D // No unit from the select set of <start_assignments> was found at the begining.
#define ERR_SYN_NO_START_ASSIGNMENT_ADD_BEGINING 0x0000026E // No unit from the select set of <start_assignment_add> was found at the begining.
#define ERR_SYN_NO_START_ASSIGNMENT_COMMA_ADD_BEGINING 0x0000026F // No unit from the select set of <start_assignment_comma_add> was found at the begining.
#define ERR_SYN_NO_ASSIGNMENT_MATCH 0x00000270 // Could not match the terminal symbol '='.
#define ERR_SYN_NO_START_ASSIGNMENT_BEGINING 0x00000271 // No unit from the select set of <start_assignment> was found at the begining.
#define ERR_SYN_NO_STOP_STATEMENT_BEGINING 0x00000272 // No unit from the select set of <stop_statement> was found at the begining.
#define ERR_SYN_NO_ASSIGNMENT_DERIVATION_BEGINING 0x00000273 // No unit from the select set of <assignment_derivation> was found at the begining.
#define ERR_SYN_NO_NUMERIC_MOD_BEGINING 0x00000274 // No unit from the select set of <numeric_mod> was found at the begining.
#define ERR_SYN_NO_ADDITION_MATCH 0x00000275 // Could not match the terminal symbol '+'.
#define ERR_SYN_NO_INF_MATCH 0x00000276 // Could not match the terminal symbol 'INF'.
#define ERR_SYN_NO_INF_END_BEGINING 0x00000277 // No unit from the select set of <inf_end> was found at the begining.
#define ERR_SYN_NO_VALUE_PAIRS_BEGINING 0x00000278 // No unit from the select set of <value_pairs> was found at the begining.
#define ERR_SYN_NO_LITERAL_MATCH 0x00000279 // Could not match the terminal symbol 'LITERAL'.
#define ERR_SYN_NO_ARROW_MATCH 0x0000027A // Could not match the terminal symbol '->'.
#define ERR_SYN_NO_VALUE_PAIR_BEGINING 0x0000027B // No unit from the select set of <value_pair> was found at the begining.
#define ERR_SYN_NO_VALUE_PAIR_ADD_BEGINING 0x0000027C // No unit from the select set of <value_pair_add> was found at the begining.
#define ERR_SYN_NO_SIGN_VALUE_BEGINING 0x0000027D // No unit from the select set of <sign_value> was found at the begining.
#define ERR_SYN_NO_MODEL_MATCH 0x0000027E // Could not match the terminal symbol 'model'.
#define ERR_SYN_NO_MODEL_DEFINITION_BEGINING 0x0000027F // No unit from the select set of <model_definition> was found at the begining.
#define ERR_SYN_NO_MODEL_DEFINITION_IN_BEGINING 0x00000280 // No unit from the select set of <model_definition_in> was found at the begining.
#define ERR_SYN_NO_MODEL_DEFINITION_OUT_BEGINING 0x00000281 // No unit from the select set of <model_definition_out> was found at the begining.
#define ERR_SYN_NO_LABEL_LIST_BEGINING 0x00000282 // No unit from the select set of <label_list> was found at the begining.
#define ERR_SYN_NO_LABELS_BEGINING 0x00000283 // No unit from the select set of <labels> was found at the begining.
#define ERR_SYN_NO_COMMA_LABEL_BEGINING 0x00000284 // No unit from the select set of <comma_label> was found at the begining.
#define ERR_SYN_NO_MODEL_MOD_BEGINING 0x00000285 // No unit from the select set of <model_mod> was found at the begining.
#define ERR_SYN_NO_PERIOD_VARIABLE_VALUE_BEGINING 0x00000286 // No unit from the select set of <period_variable_value> was found at the begining.
#define ERR_SYN_NO_VARIABLE_VALUE_ADD_BEGINING 0x00000287 // No unit from the select set of <variable_value_add> was found at the begining.
#define ERR_SYN_NO_VARIABLE_VALUE_BEGINING 0x00000288 // No unit from the select set of <variable_value> was found at the begining.
#define ERR_SYN_NO_VALUE_BEGINING 0x00000289 // No unit from the select set of <value> was found at the begining.
#define ERR_SYN_NO_KEYWORD_OF_MATCH 0x0000028A // Could not match the terminal symbol 'of'.
#define ERR_SYN_NO_SEIZE_BLOCK_BEGINING 0x0000028B // No unit from the select set of <seize_block> was found at the begining.
#define ERR_SYN_NO_RELEASE_BLOCK_BEGINING 0x0000028C // No unit from the select set of <release_block> was found at the begining.
#define ERR_SYN_NO_INQUEUE_BLOCK_BEGINING 0x0000028D // No unit from the select set of <inqueue_block> was found at the begining.
#define ERR_SYN_NO_OUTQUEUE_BLOCK_BEGINING 0x0000028E // No unit from the select set of <outqueue_block> was found at the begining.
#define ERR_SYN_NO_ARRIVE_BLOCK_BEGINING 0x00000263 // No unit from the select set of <arrive_block> was found at the begining.
#define ERR_SYN_NO_DEPART_BLOCK_BEGINING 0x0000028F // No unit from the select set of <depart_block> was found at the begining.
#define ERR_SYN_NO_MODEL_INSTANCE_BLOCK_BEGINING 0x00000290 // No unit from the select set of <model_instance_block> was found at the begining.
#define ERR_SYN_NO_GOTO_BLOCK_BEGINING 0x00000291 // No unit from the select set of <goto_block> was found at the begining.
#define ERR_SYN_NO_IF_BLOCK_BEGINING 0x00000292 // No unit from the select set of <if_block> was found at the begining.
#define ERR_SYN_NO_WAIT_BLOCK_BEGINING 0x00000293 // No unit from the select set of <wait_block> was found at the begining.
#define ERR_SYN_NO_ON_SENSITIVITY_LIST_BEGINING 0x00000294 // No unit from the select set of <on_sensitivity_list> was found at the begining.
#define ERR_SYN_NO_WHILE_UNTIL_BEGINING 0x00000295 // No unit from the select set of <while_until> was found at the begining.
#define ERR_SYN_NO_THEN_STRUCTURE_BEGINING 0x00000296 // No unit from the select set of <then_structure> was found at the begining.
#define ERR_SYN_NO_ELSE_STRUCTURE_BEGINING 0x00000297 // No unit from the select set of <else_structure> was found at the begining.
#define ERR_SYN_NO_SENSITIVITY_LIST_BEGINING 0x00000298 // No unit from the select set of <sensitivity_list> was found at the begining.
#define ERR_SYN_NO_SENSITIVITY_LIST_ADDS_BEGINING 0x00000299 // No unit from the select set of <sensitivity_list_adds> was found at the begining.
#define ERR_SYN_NO_SENSITIVITY_LIST_ADD_BEGINING 0x0000029A // No unit from the select set of <sensitivity_list_add> was found at the begining.
#define ERR_SYN_NO_GROUP_MATCH 0x0000029B // Could not match the terminal symbol 'group'.
#define ERR_SYN_NO_JOIN_GROUP_BLOCK_BEGINING 0x0000029C // No unit from the select set of <join_group_block> was found at the begining.
#define ERR_SYN_NO_LEAVE_GROUP_BLOCK_BEGINING 0x0000029D // No unit from the select set of <leave_group_block> was found at the begining.
#define ERR_SYN_NO_TO_MATCH 0x0000029E // Could not match the terminal symbol 'TO'.
#define ERR_SYN_NO_SEND_TO_BEGINING 0x0000029F // No unit from the select set of <send_to> was found at the begining.
#define ERR_SYN_NO_CREATE_BLOCK_BEGINING 0x00000300 // No unit from the select set of <create_block> was found at the begining.
#define ERR_SYN_NO_SPLIT_BLOCK_BEGINING 0x00000301 // No unit from the select set of <split_block> was found at the begining.
#define ERR_SYN_NO_DESTROY_MATCH 0x00000302 // Could not match the terminal symbol 'destroy'.
#define ERR_SYN_NO_AND_DESTROY_BEGINING 0x00000303 // No unit from the select set of <and_destroy> was found at the begining.
#define ERR_SYN_NO_EXECUTE_BLOCK_BEGINING 0x00000304 // No unit from the select set of <execute_block> was found at the begining.
#define ERR_SYN_NO_SIMULATION_BEGINING 0x00000305 // No unit from the select set of <simulation> was found at the begining.
#define ERR_SYN_NO_SIMULATION_BODY_BEGINING 0x00000306 // No unit from the select set of <simulation_body> was found at the begining.
#define ERR_SYN_NO_SIMULATION_STMT_BEGINING 0x00000307 // No unit from the select set of <simulation_stmt> was found at the begining.
#define ERR_SYN_NO_SIM_CONFIGURATION_BEGINING 0x00000308 // No unit from the select set of <sim_configuration> was found at the begining.
#define ERR_SYN_NO_UNEXPECTED_END_OF_FILE 0x00000309 // Unexpected 'endOfFile' in do while loop.
#define ERR_SYN_NO_SIM_RESET_BEGINING 0x0000030A // No unit from the select set of <sim_reset> was found at the begining.
#define ERR_SYN_NO_INITIALISATION_BEGINING 0x0000030B // No unit from the select set of <initialisation> was found at the begining.
#define ERR_SYN_NO_INITIAL_VALUES_BEGINING 0x0000030C // No unit from the select set of <initial_values> was found at the begining.
#define ERR_SYN_NO_INITIAL_VALUE_ADD_BEGINING 0x0000030D // No unit from the select set of <initial_value_add> was found at the begining.
#define ERR_SYN_NO_INITIAL_VALUE_BEGINING 0x0000030E // No unit from the select set of <initial_value> was found at the begining.
#define ERR_SYN_NO_INITIAL_VALUE_COMMA_BEGINING 0x0000030F // No unit from the select set of <initial_value_comma> was found at the begining.
#define ERR_SYN_NO_SIM_CLEAR_BEGINING 0x00000310 // No unit from the select set of <sim_clear> was found at the begining.
#define ERR_SYN_NO_GENERATE_TRANSACTIONS_BEGINING 0x00000311 // No unit from the select set of <generate_transactions> was found at the begining.
#define ERR_SYN_NO_TERMINATE_BLOCK_BEGINING 0x00000312 // No unit from the select set of <terminate_block> was found at the begining.
#define ERR_SYN_NO_UNITS_MATCH 0x00000313 // Could not match the terminal symbol 'units'.
#define ERR_SYN_NO_IN_MATCH 0x00000314 // Could not match the terminal symbol 'in'.
#define ERR_SYN_NO_UNITS_IN_EXPRESSION_BEGINING 0x00000315 // No unit from the select set of <units_in_expression> was found at the begining.
#define ERR_SYN_NO_UNITS_FROM_EXPRESSION_BEGINING 0x00000316 // No unit from the select set of <units_from_expression> was found at the begining.
#define ERR_SYN_NO_FROM_MATCH 0x00000317 // Could not match the terminal symbol 'from'.
#define ERR_SYN_NO_TIMEOUT_BEGINING 0x00000318 // No unit from the select set of <timeout> was found at the begining.
#define ERR_SYN_NO_MODEL_BODY_BEGINNING 0x00000319 // No unit from the select set of <model_body> was found at the beginning.
#define ERR_SYN_NO_MODEL_DEFINE_BEGINNING 0x0000031A // No unit from the select set of <model_define> was found at the beginning.
#define ERR_SYN_NO_LABEL_GPSS_BLOCK_BEGINNING 0x0000031B // No unit from the select set of <label_gpss_block> was found at the beginning.
#define ERR_SYN_NO_MODEL_STRUCTURE_BEGINNING 0x0000031C // No unit from the select set of <model_structure> was found at the beginning.
#define ERR_SYN_NO_GPSS_BLOCK_BEGINNING 0x0000031D // No unit from the select set of <gpss_block> was found at the beginning.
#define ERR_SYN_NO_GATHER_BLOCK_BEGINING 0x0000031E // No unit from the select set of <gather_block> was found at the beginning.
#define ERR_SYN_NO_SIMULATIONS_MATCH 0x0000031F // Could not match the terminal symbol 'simulations'.
#define ERR_SYN_NO_SIM_RUN_BEGINING 0x00000320 // No unit from the select set of <sim_run> was found at the beginning.
#define ERR_SYN_NO_LABEL_BEGINING 0x00000321 // No unit from the select set of <label> was found at the beginning.
#define ERR_SYN_NO_RETURN_STATEMENT_BEGINING 0x00000322 // No unit from the select set of <return_statement> was found at the beginning.
#define ERR_SYN_NO_START_STATEMENT_BEGINING 0x00000323 // No unit from the select set of <start_statement> was found at the beginning.
#define ERR_SYN_NO_INF_BEGIN_BEGINING 0x00000324 // No unit from the select set of <inf_begin> was found at the beginning.
#define ERR_SYN_NO_BLOCK_LABELS_BEGINING 0x00000325 // No unit from the select set of <block_labels> was found at the beginning.
#define ERR_SYN_NO_BLOCK_LABEL_BEGINING 0x00000326 // No unit from the select set of <block_label> was found at the beginning.
#define ERR_SYN_NO_VALUE_PAIRS_ADDS_BEGINING 0x00000327 // No unit from the select set of <value_pairs_adds> was found at the beginning.
#define ERR_SYN_NO_METHOD_STATEMENT_BEGINING 0x00000328 // No unit from the select set of <method_statement> was found at the begining.
#define ERR_SYN_NO_ASSIGNMENT_BEGINING 0x00000329 // No unit from the select set of <assignment> was found at the begining.
#define ERR_SYN_NO_SIMPLE_STATMENT_BEGINING 0x0000032A // No unit from the select set of <simple_statement> was found at the begining.
#define ERR_SYN_NO_METHOD_STATEMENT_PARSE 0x0000032B//Could not parse the nonterminal symbol <method_statement>
#define ERR_SYN_NO_TRACE_PART_BEGINING 0x0000032C // No unit from the select set of <trace_part> was found at the begining.

// Lexical errors
#define ERR_LEX_UNKNOWN_CHAR_FOUND				0x00000100		// Unrecognizable character found.
#define ERR_LEX_MISSPELLED_OPERATOR_OR			0x00000101		// First part of OR (||) operator found, assuming the other part follows.
#define ERR_LEX_MISSPELLED_OPERATOR_AND			0x00000102		// First part of AND (&&) operator found, assuming the other part follows.
#define ERR_LEX_UNRECOGNIZED_OPERATOR_SPECIAL	0x00000103		// Neither operator nor special character recognized.
#define ERR_LEX_UNFINISHED_COMMENT				0x00000104		// Comment has no closing sequence (unfinished comment).
#define ERR_LEX_BAD_SUFFIX_NUMBER				0x00000105		// Bad suffix on number found.
#define ERR_LEX_UNEXPECTED_SYMBOL				0x00000106		// Unexpected symbol found.
#define ERR_LEX_NO_DIGIT_AFTER_DECIMAL_DOT		0x00000107		// No digit found after decimal separator.
#define ERR_LEX_WRONG_SYMBOL_AFTER_EXPONENT		0x00000108		// Wrong symbol after exponent symbol E.
#define ERR_LEX_NO_DIGIT_AFTER_EXPONENT_SIGN	0x00000109		// No digit following sign in exponent.
#define ERR_LEX_STRING_UNEXPECTED_END_OF_LINE	0x0000010A		// Unexpected end of line (EOL) found in string constant.
#define ERR_LEX_STRING_UNEXPECTED_END_OF_FILE	0x0000010B		// Unexpected end of file (EOF) found in string constant.
#define ERR_LEX_STRING_SOLO_BACKSLASH			0x0000010C		// Starting of escape sequence found (backslash), missing other part.



// Semantic errors
#define ERR_SEM_GENERIC_SEMANTIC_ERROR          0x00000200 // Generic error


#define ERR_SEM_MULTIPLE_MODIFIER_ABSTRACT      0x00001011 // Multiple declaration of modifier abstract.
#define ERR_SEM_MULTIPLE_MODIFIER_PUBLIC        0x00001012 // Multiple declaration of modifier public.
#define ERR_SEM_MULTIPLE_MODIFIER_PRIVATE       0x00001013 // Multiple declaration of modifier private.
#define ERR_SEM_MULTIPLE_MODIFIER_PROTECTED     0x00001014 // Multiple declaration of modifier protected.
#define ERR_SEM_MULTIPLE_MODIFIER_FINAL         0x00001015 // Multiple declaration of modifier final.
#define ERR_SEM_MULTIPLE_MODIFIER_VIRTUAL       0x00001016 // Multiple declaration of modifier virtual.
#define ERR_SEM_MULTIPLE_MODIFIER_STATIC        0x00001017 // Multiple declaration of modifier static.
#define ERR_SEM_MULTIPLE_MODIFIER_OVERRIDE      0x00001018 // Multiple declaration of modifier override.
#define ERR_SEM_MULTIPLE_MODIFIER_CONST         0x00001019 // Multiple declaration of modifier const.

#define ERR_SEM_MULTIPLE_ACCESS_MODIFIERS		0x0000101A // Multiple declaration of access modifiers.
#define ERR_SEM_ILLEGAL_MODIFIERS_COMBINATION	0x0000101B // Illegal combination of modifiers.

/* DEFINITION OF WARNINGS */

// RANGES
// weird warnings - 0x00000002 - 0x000000FF
// lexic - 0x00000100 - 0x000001FF
// syntax - 0x00000200 - 0x00000FFF
// semantic - 0x00001000 - 0x00001FFF
// code generation - 0x00002000 - 0x000027FF


#define WAR_GENERIC_WARNING 0x00000001  // Generic warning
// other (your) declarations ...
// ...




#endif

